function [L y ok] = putere_inversa(A, y0, L0, max, tol) 
%	Functia care calculeaza o valoare proprie si vectorul propriu 
%corespunzator acestei valori.
%
%	Date de intrare:
%		- A -> matricea  careia se cer valorile si vectorii proprii
%		- y0 ->vectorul propriu initial;
%		- L0 -> valoarea proprie initiala;
%		- max -> numarul de iteratii;
%		- tol -> toleranta admisa.
%
%Date de iesire:
%		- L -> valorea proprii;
%		- y -> vectorul propriu;
%		- ok -> testul daca solutia data este in limita tolerantei admise.

[n n] = size(A);

y = y0;
L = L0;

u = y' * A * y;

n1 = 0;

while( n1 <= max && (norm( A*y - L * y) > tol) )
	n1 = n1 + 1;
	z = inv( -A + u * eye(n)) * y;
	y = z./norm(z);
	L = y'*A*y;
	u = L;
endwhile
ok = (norm( A*y - L * y) < tol);

endfunction
